package Window;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Text;
public class ConsoleView {
private static ConsoleView _instance = null;
private Text consoleTextComponent = null;
private ConsoleView() {
}
private ConsoleView(Text consoleTextComponent) {
this.consoleTextComponent = consoleTextComponent;
}
public synchronized static ConsoleView getInstance() {
return _instance;
}
public synchronized static ConsoleView getInstance(Text consoleTextComponent) {
if (_instance == null) {
_instance = new ConsoleView(consoleTextComponent);
} else {
System.out.println("Denied re-initiallization");
}
return _instance;
}
public void println(String str) {
Display.getDefault().asyncExec(new Runnable() {
String str;
public Runnable init(String pstr) {
this.str = pstr;
return this;
}
public void run() {
if (!consoleTextComponent.isDisposed()){
consoleTextComponent.append(str + "\r\n");
}
}
}.init(str));
}
public void print(String str) {
Display.getDefault().asyncExec(new Runnable() {
String str;
public Runnable init(String pstr) {
this.str = pstr;
return this;
}
public void run() {
if (!consoleTextComponent.isDisposed()){
consoleTextComponent.append(str);
}
}
}.init(str));
}
public void clear() {
Display.getDefault().asyncExec(new Runnable() {
public void run() {
if (!consoleTextComponent.isDisposed()){
consoleTextComponent.setText("");
}
}
});
}
}